package com.flejay.dreamrecruiter.service;

import java.util.List;

import com.flejay.dreamrecruiter.model.AbstractTag;
import com.flejay.dreamrecruiter.model.Tag;

/**
 * 
 * 
 * @author Victor Fleurant
 *
 */
public interface IParsingEngineService {

	/**
	 * Renvoi le premier tag qui matche avec la ligne. 
	 * Si aucun tag matche avec la ligne alors renvoi null
	 * 
	 * @param preparedLine
	 * @param tags
	 * @return
	 */
	AbstractTag getFirstFoundTag(String preparedLine, List<AbstractTag> tags);

	/**
	 * Renvoi true si la ligne matche avec une condition d'arret, false sinon 
	 * 
	 * @param preparedLine
	 * @param currentTag
	 * @return
	 */
	boolean foundStoppingCondition(String preparedLine,Tag currentTag);

	AbstractTag getFirstMatchingTag(String preparedLine, List<AbstractTag> tags);

}
